package com.ruoyi.qif.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 锜风公寓-公账支出对象 qif_expenditure
 * 
 * @author David
 * @date 2025-11-03
 */
public class QifExpenditure extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 支出id */
    private Long expenditureId;

    /** 房间号 */
    @Excel(name = "房号")
    private String roomNum;

    /** 金额 */
    @Excel(name = "金额")
    private Long amount;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expenditureDate;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    // 用于接收前端查询的年月（非数据库字段）
    private Integer queryYear;
    private Integer queryMonth;
    public Integer getQueryYear() {
        return queryYear;
    }
    public void setQueryYear(Integer queryYear) {
        this.queryYear = queryYear;
    }
    public Integer getQueryMonth() {
        return queryMonth;
    }
    public void setQueryMonth(Integer queryMonth) {
        this.queryMonth = queryMonth;
    }
    public void setExpenditureId(Long expenditureId) 
    {
        this.expenditureId = expenditureId;
    }

    public Long getExpenditureId() 
    {
        return expenditureId;
    }

    public void setRoomNum(String roomNum) 
    {
        this.roomNum = roomNum;
    }

    public String getRoomNum() 
    {
        return roomNum;
    }

    public void setAmount(Long amount) 
    {
        this.amount = amount;
    }

    public Long getAmount() 
    {
        return amount;
    }

    public void setExpenditureDate(Date expenditureDate) 
    {
        this.expenditureDate = expenditureDate;
    }

    public Date getExpenditureDate() 
    {
        return expenditureDate;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("expenditureId", getExpenditureId())
            .append("roomNum", getRoomNum())
            .append("amount", getAmount())
            .append("expenditureDate", getExpenditureDate())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
